DROP procedure IF EXISTS `GrabarEstados_solicitud`;

DELIMITER $$
CREATE  PROCEDURE `GrabarEstados_solicitud`(in scestadosolicitud numeric,
				in scsolicitud numeric,
				in scestado numeric,
				in cousuario  varchar(50),
				in scempresa  numeric,
			    out mensaje varchar(100),
			   out codigomensaje varchar(2))
BEGIN
IF(scestadosolicitud=0 OR scestadosolicitud IS NULL) THEN

		insert into Smart_estados_solicitud(nm_scsolicitud,
									nm_scestado,sm_fhmodificacion,
									sm_fhingreso,sm_fhretiro,
									sm_cousuario,sm_scempresa) 
		values( scsolicitud,
		  scestado,now(),now(),null,
		  cousuario,scempresa);
          
        set mensaje="Estados_solicitud grabada con exito";
        set codigomensaje="01";
	end if;
    IF(scestadosolicitud>0) THEN
		UPDATE Smart_estados_solicitud
		SET
		nm_scestado = scestado,
        nm_scsolicitud=scsolicitud,
		sm_fhmodificacion = NOW(),
		sm_cousuario =cousuario
		WHERE sm_scestadosolicitud = scestadosolicitud;
		
        set mensaje="Estados_solicitud actualizado con exito";
        set codigomensaje="02";
	end if;
END$$

DELIMITER ;